// System Unit
// Resource Loading Support - Initialization & Imports

(*************)
(* Interface *)
(*************)
{$IFDEF Include_Modules_Header}

(*
 Const
  ResStringKind_LString = 0;
  ResStringKind_WString = 1;
  ResStringKind_UString = 2;

 Type
  {$POINTERMATH ON}
  PResStringInitItem = ^TResStringInitItem;
  TResStringInitItem = Record
   Variable: Pointer;
   ResString: PResStringRec;
   StringKind: Cardinal;
  END;
  {$POINTERMATH OFF}

  TResStringInitTable = Record
    Count: Integer;
    Table: {Array[0..Count-1] of}TResStringInitItem;
  END;

 Procedure _InitResStrings(Const InitTable: TResStringInitTable);
*)(*
 Type
  {$POINTERMATH ON}
  PResStringImportInitItem = ^TResStringImportInitItem;
  TResStringImportInitItem = Record
   Variable: Pointer;
   ResString: ^PResStringRec;
   StringKind: Cardinal;
  END;
  {$POINTERMATH OFF}

  TResStringImportInitTable = Record
    Count: Integer;
    Table: {Array[0..Count-1] of}TResStringImportInitItem;
  END;

 Procedure _InitResStringImports(Const InitTable: TResStringImportInitTable);
*)(*
 Type
  {$POINTERMATH ON}
  PImportInitItem = ^TImportInitItem;
  TImportInitItem = Record
   Variable: Pointer;
   SourceIndir: PPointer;
   Offset: NativeInt;
  END;
  {$POINTERMATH OFF}

  TImportInitTable = Record
    Count: Integer;
    Table: {Array[0..Count-1] of}TImportInitItem;
  END;

 Procedure _InitImports(Const InitTable: TImportInitTable);
*)(*
 Type
  {$POINTERMATH ON}
  PWideStringInitItem = ^TWideStringInitItem;
  TWideStringInitItem = Record
   Variable: Pointer;
   WString: Pointer;
  END;
  {$POINTERMATH OFF}

  TWideStringInitTable = Record
    Count: Integer;
    Table: {Array[0..Count-1] of}TWideStringInitItem;
  END;

 Procedure _InitWideStrings(Const InitTable: TWideStringInitTable);
*)

{$ENDIF Include_Modules_Header}
(******************)
(* Implementation *)
(******************)
{$IFDEF Include_Modules_Implement}
{$ENDIF Include_Modules_Implement}
(******************)
(* Initialization *)
(******************)
{$IFDEF Include_Modules_Initialize}
{$ENDIF Include_Modules_Initialize}
(****************)
(* Finalization *)
(****************)
{$IFDEF Include_Modules_Finalize}
{$ENDIF Include_Modules_Finalize}
